<?php

//	替换引入文件，将内容生成一个新文件
function tpl($file){
	preg_match('/<include file="(\w+)" \/>/', $file, $out);
	if($out){
		$file = str_replace($out[0],file_get_contents(TPL.'/'.$out[1].'.php'),$file);
	}else{
		return $file;
	}
	return tpl($file);
}
// 形成新的模板文件
function getTemplates(){
	$file = file_get_contents(TPL.$_GET['a'].'.php');
	$fname = STA.md5($_GET['m'].'/'.$_GET['a']).'.php';
	if(!file_exists($fname) || T_DEBUG){	//T_DEBUG模式下始终新生成模板文件进行调试
		if(!file_put_contents($fname, tpl($file))){
			exit("保存文件失败");
		}
	}
	return $fname;
}

function _404(){
	header("HTTP/1.0 404 Not Found");
	require '404.html';
	exit;
}

function M($model=''){
	require MODEL.strtolower($model).'.class.php';
	$mn = ucfirst($model).'Model';
	return new $mn();
}

function D(){
	require CORE.'db.php';
	return new Db();
}

function pdo(){
	$db = new PDO('mysql:host=localhost;dbname=mvc;charset=utf8', 'root', '');
	$db->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER);
	$db->exec("set names 'utf8';");
	return $db;
}

function fetch($res){
	if(!$res) return false;
	$data = $res->fetchAll(PDO::FETCH_ASSOC);
	return $data;
}